package com.learning.service;

import com.learning.dto.QuestionDetailDTO;
import com.learning.dto.QuestionPageQueryDTO;
import com.learning.entity.Question;
import com.baomidou.mybatisplus.extension.service.IService;
import com.learning.result.PageResult;
import com.learning.vo.QuestionDetailVO;
import com.learning.vo.QuestionVO;

/**
 * <p>
 * 题目表 服务类
 * </p>
 *
 * @author itRao
 * @since 2024-05-24
 */
public interface IQuestionService extends IService<Question> {

    /**
     * 分页查询题目
     *
     * @param dto
     * @return
     */
    PageResult<QuestionVO> pageQuery(QuestionPageQueryDTO dto);

    /**
     * 根据问题ID查询问题细节
     *
     * @param id
     * @return
     */
    QuestionDetailVO queryDetail(Long id);

    /**
     * 新增问题
     *
     * @param dto
     */
    void saveQuestion(QuestionDetailDTO dto);

    /**
     * 根据问题ID修改问题详细
     *
     * @param dto
     */
    void updateQuestion(QuestionDetailDTO dto);

    /**
     * 根据问题Id删除问题
     *
     * @param id
     */
    void deleteQuestion(Long id);
}
